//@author A0087294-reused
#ifndef __StdOutput_h__
#define __StdOutput_h__

#include <iostream>

namespace logging {

    /*! \brief Provides an interface to the standard
     *         output facilities of e.g. Linux or
     *         Windows.
     */
    template <std::ostream & stream = ::std::cout>
    class StdOutput {
        public:
            /*! \brief operator that can output a simple character.
             *
             * \param c the character that needs to be outputed
             * \return a reference to itself allowing chaning of
             *         opertor<< calls.
             */
            StdOutput & operator<<(const char c) {
                stream << c;
                return *this;
            }
    };

} /* logging */

#endif
